<?php
// +----------------------------------------------------------------------
// | OneThink [ WE CAN DO IT JUST THINK IT ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013 http://www.onethink.cn All rights reserved.
// +----------------------------------------------------------------------
// | Author: 麦当苗儿 <zuojiazi@vip.qq.com> <http://www.zjzit.cn>
// +----------------------------------------------------------------------

/**
 * 前台公共库文件
 * 主要定义前台公共函数库
 */

/**
 * 检测验证码
 * @param  integer $id 验证码ID
 * @return boolean     检测结果
 * @author 麦当苗儿 <zuojiazi@vip.qq.com>
 */
function check_verify($code, $id = 1){
	$verify = new \Think\Verify();
	return $verify->check($code, $id);
}

/**
 * 获取列表总行数
 * @param  string  $category 分类ID
 * @param  integer $status   数据状态
 * @author 麦当苗儿 <zuojiazi@vip.qq.com>
 */
function get_list_count($category, $status = 1){
    static $count;
    if(!isset($count[$category])){
        $count[$category] = D('Document')->listCount($category, $status);
    }
    return $count[$category];
}

/**
 * 获取段落总数
 * @param  string $id 文档ID
 * @return integer    段落总数
 * @author 麦当苗儿 <zuojiazi@vip.qq.com>
 */
function get_part_count($id){
    static $count;
    if(!isset($count[$id])){
        $count[$id] = D('Document')->partCount($id);
    }
    return $count[$id];
}

/**
 * 获取导航URL
 * @param  string $url 导航URL
 * @return string      解析或的url
 * @author 麦当苗儿 <zuojiazi@vip.qq.com>
 */
function get_nav_url($url){
    switch ($url) {
        case 'http://' === substr($url, 0, 7):
        case '#' === substr($url, 0, 1):
            break;        
        default:
            $url = U($url);
            break;
    }
    return $url;
}

function valid_login($save_cookie=1){
   if(!is_login()){
       if($save_cookie){
        Cookie('__orpage__', __SELF__);
       }
       redirect(U('User/login'));
   }
}
function int_to_string(&$data,$map=array('status'=>array(1=>'正常',-1=>'删除',0=>'禁用',2=>'未审核',3=>'草稿'))) {
    if($data === false || $data === null ){
        return $data;
    }
    $data = (array)$data;
    foreach ($data as $key => $row){
        foreach ($map as $col=>$pair){
            if(isset($row[$col]) && isset($pair[$row[$col]])){
                $data[$key][$col.'_text'] = $pair[$row[$col]];
            }
        }
    }
    return $data;
}

/**
 * 商品分类树
 *
 * @return array
 */
function getCategoryTree()
{
    static $list;

    if (empty($list)) {
        $list = S('CACHE_PRODUCT_CATEGORIES');
    }

    if (empty($list)) {
        $M_product_category = M('product_category');
        $list = $M_product_category->order('sort ASC')->select();
        $list = list_to_tree($list, 'id', 'pid');
        S('CACHE_PRODUCT_CATEGORIES', $list);
    }
    return $list;
}


/**
 * 帮助中心 左侧菜单
 *
 * @return array
 */
function  getArticleTree (){
   static $list;

    if (empty($list)) {
        $list = S('CACHE_ARTICLE_HELP_MENU');
    }

    if (empty($list)) {
        $M_help = M('help');
        $list = $M_help->order('sort ASC')->select();
        $list = list_to_tree($list, 'id', 'pid');
        S('CACHE_ARTICLE_HELP_MENU', $list);
    }
    return $list;
}

/**
 * 我的足迹
 */
function recordMybrowse($id){
    if(UID){
        $M_browse=M('collect_browse');
        $colmap=array('uid'=>UID,'product_id'=>$id);
        $bro_id=$M_browse->where($colmap)->find();
        if(empty($bro_id)){
            $M_browse->add(array('uid'=>UID,'create_time'=>NOW_TIME,'product_id'=>$id,'ip'=>get_client_ip(1)));
        }else{
            $M_browse->where($colmap)->save(array('create_time'=>NOW_TIME,'ip'=>get_client_ip(1)));
        }    
        
        $productinfo=M('product')->field('id,shop_id')->find($id);
        $M_cr_s=M('collect_browse_shop');
        if($productinfo['shop_id']){
            $shoplmap=array('uid'=>UID,'shop_id'=>$productinfo['shop_id']);
            $brow_shop=$M_cr_s->where($shoplmap)->find();
            if(empty($brow_shop)){
                //$M_cr_s->add(array('uid'=>UId,'create_time'=>NOW_TIME,'shop_id'=>$info['shop_id'],'ip'=>get_client_ip(1)));
            }else{
                //$M_cr_s->where($shoplmap)->save(array('create_time'=>NOW_TIME,'ip'=>get_client_ip(1) ));
            }
        }
    }
}

/**
 * 帮助中心 左侧菜单
 *
 * @return array
 */
function  getArticleTreeByPid ($id){
    static $list;

    $M_help = M('help');
    $list = $M_help->order('sort ASC')->where(array('pid'=>$id))->order('sort')->select();
    
    return $list;
}